/*
 * bsp_spi.h
 *
 *  Created on: 2025 Jul 4
 *      Author: SFLYs
 */

#ifndef XTSPINELIB_BOARD_DRIVERS_BSP_SPI_H_
#define XTSPINELIB_BOARD_DRIVERS_BSP_SPI_H_


#include "driverlib.h"
#include "device.h"


#define SPI_CS_H 1
#define SPI_CS_L 0
#define SPI_FREQ (5000000U)


#define SPI_BASE      (u32) & SpibRegs
#define GPIO_SPI_CLK   28
#define GPIO_CONFIG_SPI_CLK GPIO_28_SPIB_CLK
#define GPIO_SPI_MOSI  7
#define GPIO_CONFIG_GPIO_SPI_MOSI GPIO_7_SPIB_SIMO
#define GPIO_SPI_MISO  6
#define GPIO_CONFIG_GPIO_SPI_MISO GPIO_6_SPIB_SOMI


#define GPIO_SPI_STE    33
#define GPIO_CONFIG_GPIO_SPI_STE  GPIO_33_SPIB_STE

#define GPIO_SPI_CS    32
#define GPIO_CONFIG_GPIO_SPI_CS GPIO_32_GPIO32


#define GPIO_SPI_ESTOP    32
#define GPIO_CONFIG_GPIO_SPI_ESTOP GPIO_32_GPIO32


#define SPI_GPIO_CS_STATUS     GPIO_readPin(GPIO_SPI_CS)
#define SPI_GPIO_CS_ESTOP      GPIO_readPin(GPIO_SPI_ESTOP)



//#define SPI_GPIO_CS_H         GPIO_writePin(GPIO_SPI_CS,SPI_CS_H);
//#define SPI_GPIO_CS_L         GPIO_writePin(GPIO_SPI_CS,SPI_CS_L);



void Bsp_SPI_Init(void);
void Bsp_SPI_SendByte(uint16_t data);
#endif /* XTSPINELIB_BOARD_DRIVERS_BSP_SPI_H_ */
